<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="getXml.js" ></script>
	</head>
	<body>
		<div>XPth是一种节点的查找手段(路径查找，结构树)，DOM3级首次实现该标准</div>
	</body>
	<script>
	 var xmlStr = '<root><b><user id="5">zhangsan</user><user id="4">lisi</user></b></root>';
		var xmlDom = getXMLDOM(xmlStr);
		
		//xmlDom就是上下文节点，它的指针指向的是root之前
		//ie中的方法 
		// 1 selectStringNode()获取单一节点,如果有多个返回第一个
		var node = xmlDom.selectSingleNode('root/b/user');
		//var node = xmlDom.selectSingleNode('root/user[1]');//表示获取第二个（xpath规定默认从1开始，但是ie从0开始）
		alert(node.xml);//<user id="5">zhangsan</user>
		alert(node.tagName+'=='+node.firstChild.nodeValue);
		
		//直接获取值写法  /text()
		alert(xmlDom.selectSingleNode('//user[1]/text()').nodeValue);
		
		//双斜杠可以获取不关心层次的第一个节点
	 alert(xmlDom.selectSingleNode('//user').xml);
		//再节点内的范围内获取不关心层次的节点
		 alert(xmlDom.selectSingleNode('root//user').xml);
		//@ 通过节点唯一属性
		 alert(xmlDom.selectSingleNode('//user[@id=4]').xml);
		
	
		
		//xmlDom.documentElement也是上下文节点
		var node01 = xmlDom.documentElement.selectSingleNode('b');//此处指针已经指向root之后b之前
		alert(node01.xml);
		
		
	//2 selectNodes()获取节点集合
		//获取集合
		var nodes = xmlDom.selectNodes('root[0]//user');
		alert(nodes.length);
		//可以遍历
		alert(nodes[1].xml);
	</script>
</html>
